package com.k2data.k2app.domain.po.v2;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.k2data.k2app.constant.Constant;
import com.k2data.k2app.domain.po.Customer;
import com.k2data.k2app.domain.po.Device;
import com.k2data.k2app.domain.po.DictPO;
import com.k2data.k2app.domain.po.v1.Fault;
import com.k2data.k2app.domain.po.v1.REventPoint;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.time.ZonedDateTime;
import java.util.List;

/**
 * @author lidong9144@163.com 17-3-20.
 */
@Data
@Table(name = "report")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ReportPO implements Serializable {
    @Id
    @GeneratedValue(generator = "JDBC")
    private Long id;
    private String name;
    private Long customerId;
    private Long userId;
    private String reportDesc;

    @JsonFormat(pattern = Constant.ISO_FORMAT)
    @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)
    private LocalDateTime reportTime;

    @Transient
    private String userName;

    @Transient
    private Customer customer;

    @Transient
    private List fileList;

    @JsonIgnore
    @Transient
    private String orderBy;

    @Transient
    @JsonIgnore
    private Integer pageNum ;
    @Transient
    @JsonIgnore
    private Integer pageSize ;
}
